package com.dycx.message.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dycx.common.RestResponse;
import com.dycx.message.dto.SendVerificationCodeDTO;
import com.dycx.message.dto.VerificationCodeDTO;
import com.dycx.message.entity.VerificationCodeDO;
import com.dycx.message.vo.VerificationCodeVO;


/**
 * 验证码(VerificationCode)表服务接口
 *
 * @author wuzongbin
 * @since 2024-01-12 10:39:26
 */
public interface VerificationCodeService extends IService<VerificationCodeDO> {

    /**
     * 分页
     */
    Page<VerificationCodeVO> getPage(VerificationCodeDTO dto);

    /**
     * 获取详情
     */
    VerificationCodeVO load(Integer verificationCodeId);

    /**
     * 添加
     */
    Boolean create(VerificationCodeDTO dto);

    /**
     * 修改
     */
    Boolean edit(VerificationCodeDTO dto);

    /**
     * 删除
     */
    Boolean delete(Integer verificationCodeId);

    /**
     * 获取最大排序
     */
    Integer getMaxSort();

    /**
     * 发送验证码
     * @param dto
     * @return
     */
    RestResponse<String> sendVerificationCode(SendVerificationCodeDTO dto);

    /**
     * 校验验证码
     * @param dto
     * @return
     */
    Boolean checkVerificationCode(VerificationCodeDTO dto);
}

